1.二分图
二分图对偶定理:
二分图最大权匹配 二分图最小点权覆盖 二分图最大点权独立集
1.最小点权覆盖
若一个点集 , 使得: , ,那么 便是原图的一个点覆盖。
对于所有满足条件的 , 的最小值即为最小点权覆盖。
-
将二分图的两部分分别与源点/汇点连容量为点权的边
-
二分图内部的边容量设为
最后图的最小割即为原二分图的最小点权覆盖。
考虑这样做的正确性:
二分图的点覆盖中每条边都至少被一个点覆盖,所以没有源点到汇点的路径,是新图的割。
新图的割的边集只可能包含源点与汇点为顶点的边(内部的边容量为 ),那么割掉一条边对应选出这个点。
2.最大点权独立集
若一个点集 , 使得: , , 那么 便是原图的一个点独立集。
对于所有满足条件的 , 的最大值即为最大点权独立集。
由对偶定理和 1. 易得解法,不再赘述。
2.集合划分问题
将元素划分为两个集合 , 满足 且 。
划分的代价为:
同时给定一些关系,若元素 不在同一集合则会有 的代价。
求划分的最小代价。
-
将一个元素拆成两个点,分别表示选入 集合。再从源点/汇点向两部分的点连容量为 的边(注意容量是反的)。
-
元素之间的代价可视为 之间连容量为 的边。
-
在 之间连容量为 的边。
图的最小割即为最小代价。
正确性?
因为 之间的边容量为 , 不可能是原图的边割集。
所以 之中一定有一点与源汇的边被割去,若 被割则表示选入 集合,反之若 被割则选入 集合。这也解释了建图时容量是相反的。
被割则表示接受 的代价。显然
条边最多会被割 条。
可以看出,图的割便是一个选择方案,选择方案也对应一个割。求出最小割即可。
P2057 [SHOI2007]善意的投票 / [JLOI2010]冠军调查
3.方格问题
- 格子之间有要求
格点之间的要求视作边,若是二分图则是最大点权独立集。
- 每行、每列、每个格子有要求
对于每行、每列分别建一个点
行与列之间的边对应格子限制,源点与行的边 / 汇点与列的边 对应 行 / 列 的限制。
值得注意的是,这个图也是一个二分图。
4.最大权闭合子图
对于原图 的一个子图 ,
若: ,有 ,那么 为原图的闭合子图。
对于所有满足条件的 , 的最大值即为原图的最大权闭合子图。
-
对于原图中点权为正的点 ,连接 , 容量为
。 -
对于原图中点权为负的点 ,连接 ,容量为 。
-
对于原图中的边,连接 , 容量为 。
答案即为所有正权点的权值之和减去新图的最小割。
咕咕咕...
5.最大密度子图
6.对偶图
2020.12.18 拆点、最大流
P3153 [CQOI2009]跳舞
二分答案 + 拆点 + 最大流
P3163 [CQOI2014]危桥
最大流
2020.12.19 最大流/最小割
*SP839 Optimal Marks
按位考虑 + 最小割
2020.12.21 上下界网络流
P4311 士兵占领
P4843 清理雪道
UVA1440 Inspection
2020.12.22 上下界网络流
P4194 矩阵
2020.12.23 拆点、最大流
UVA12125 March of the Penguins
拆点
*SP4063 Sell Pigs
最大流建模
2020.12.24 最大流/最小割
*P1344 [USACO4.4]Pollutant Control
特殊处理:
在最小割最小的前提下,让割的边最少。
对每一条 的边变为 。
最后 为最小割, 为最少边。
*P2057 [SHOI2007]善意的投票 / [JLOI2010]冠军调查
最小割建模
2020.12.25 最大流/最小割
UVA1660 Cable TV Network & SP300 Cable TV Network
最小割建模
*P4662 [BalticOI 2008]黑手党
最小割建模
P3191 [HNOI2007]紧急疏散
最大流建模
P2402 奶牛隐藏
最大流建模
2020.12.26 最大权闭合子图/最大密度子图
CF1082G Petya and Graph
P4174 [NOI2006]最大获利
P3410 拍照
*P4177 [CEOI2008]order
P3749 [六省联考2017]寿司餐厅
P5295 [北京省选集训2019]图的难题
P2805 [NOI2009]植物大战僵尸
UVA1389 Hard Life
2020.12.
P3973 [TJOI2015]线性代数
最小割建模